import { onMounted, ref } from "vue";
import categoryApi from "@/api/category.js";
import { useRoute } from "vue-router";
import { onBeforeRouteUpdate } from "vue-router"; // 监听路由变化
// 封装我们分类数据相关的业务代码
export function useCategory() {
    //获取分类下面的数据
    const categoryData = ref({});
    const route = useRoute();
    const getCategory = async (id = route.params.id) => {
        //console.log(route.params.id);
        const res = await categoryApi.getCategoryData(id);
        categoryData.value = res.result;
    };
    onMounted(() => getCategory());
    //目标，当路由参数变化的时候，把分类数据接口重新获取数据
    onBeforeRouteUpdate((to) => {
        //console.log("路由变化了");
        //存在的问题：使用最新的路由参数请求最新的分类数据
        getCategory(to.params.id);
    });
    //数据return出去
    return {
        categoryData,
        getCategory,
    }
}